package com.wicket.okrbff.web.contorller;

import cn.hutool.core.bean.BeanUtil;
import com.wicket.okrbff.biz.service.DashboardAchievementService;
import com.wicket.okrbff.biz.service.dto.req.*;
import com.wicket.okrbff.biz.service.dto.res.*;
import com.wicket.okrbff.common.ro.OkrResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import java.util.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.wicket.okrapp.integration.FwAppAchievementClient;
import com.wicket.okrapp.integration.dto.QueryAchievementDockingListComRespDto;
import com.wicket.okrapp.integration.dto.QueryAchievementDockingListComReqDto;
import com.wicket.okrapp.integration.dto.BatchQueryAchievementInfoComRespDto;
import com.wicket.okrapp.integration.dto.BatchQueryAchievementInfoComReqDto;
import java.util.stream.Collectors;
import cn.hutool.core.collection.CollectionUtil;
import com.wicket.okrbff.common.exception.Assert;
import com.wicket.okrbff.common.util.CommonFunctionHelper;
import com.wicket.okrapp.integration.FwAppTargetCalcClient;
import com.wicket.okrapp.integration.dto.QueryTargetContetCycleDetailComRespDto;
import com.wicket.okrapp.integration.dto.QueryTargetContetCycleDetailComReqDto;
import com.wicket.okrapp.integration.FwAppDashboardAchievementClient;
import com.wicket.okrapp.integration.dto.QueryIconicAchievementsDetailsListComRespDto;
import com.wicket.okrapp.integration.dto.QueryIconicAchievementsDetailsListComReqDto;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
@Api(value = "DashboardAchievement", tags = { "DashboardAchievement" })
@RestController
// @RequestMapping("/oms/dashboardAchievement/")
public class DashboardAchievementController {

  @Autowired
  DashboardAchievementService dashboardAchievementService;
/**
   * B3查询最新成果列表
   * gen by moon at 4/7/2024, 9:24:02 AM
   */
    @PostMapping("/oms/dashboardAchievement/queryNewDockAchievementList")
    @ApiOperation(value = "B3查询最新成果列表", response = OkrResult.class)
    public OkrResult<BffQueryNewDockAchievementListRespDto> queryNewDockAchievementList(@RequestBody(required=false) @Validated BffQueryNewDockAchievementListReqDto reqDTO){
        return OkrResult.success(dashboardAchievementService.queryNewDockAchievementList(reqDTO));
    }
/**
   * B3查询标志性成果明细列表
   * gen by moon at 7/3/2024, 9:00:59 PM
   */
    @PostMapping("/oms/dashboardAchievement/queryIconicAchievementsDetailsList")
    @ApiOperation(value = "B3查询标志性成果明细列表", response = OkrResult.class)
    public OkrResult<BffQueryIconicAchievementsDetailsListRespDto> queryIconicAchievementsDetailsList(@RequestBody(required=false) @Validated BffQueryIconicAchievementsDetailsListReqDto reqDTO){
        return OkrResult.success(dashboardAchievementService.queryIconicAchievementsDetailsList(reqDTO));
    }
}
